home *** CD-ROM | disk | FTP | other *** search
/ Workbench Design / WB Collection.iso / datatypes / zgif / zgifdatatype.doc < prev    next >
Text File  |  1996-04-07  |  6KB  |  162 lines

  1.  
  2.  
  3.     ZGIFDatatype 39.16
  4.     June '95
  5.  
  6.     Another FAST Utility Written by Michael Zucchi
  7.  
  8. This is a replacement for any of the other gif datatypes available.  What
  9. makes it considerably better than any of the others?  Speed.  On an
  10. A1200 it will load GIF's using multiview approximately the same speed as
  11. loading IFF ILBM pictures.  And a lot faster if loading from floppy disks.
  12.  
  13. In addition, asynchronous file reading routines have been incorporated
  14. into the code which allow it to load pictures virtually independent
  15. of I/O speed.  For example a 680x480x256 gif picture will load off of
  16. floppy disk within a few seconds of one loading off of a hard drive.
  17. (this is in an Amiga 1200, with no fastmem)
  18.  
  19. It requires Release 3.0 or greater of the system software.
  20.  
  21. Main features:
  22.  
  23.     o    SPEED.  Try it, after using this you wont want to be without it!
  24.     o    Supports most gifs (only some esoteric, and mostly unused features
  25.         of the GIF8?a standard have been ignored)
  26.     o    Uses async file reading for greater performance - on an A1200 will
  27.     load a picture the same speed off of floppy as off of hard drive!
  28.     o    100% Assembly language, very optimised.
  29.     o    Custom chunky to planar conversion, that is reasonably fast (a version
  30.         using WritePixelLine8() runs about 50% the speed of this version)
  31.     o    Now works with all 68000 series CPU's (i hope)
  32.     o    Now supports transparent gifs ('copy' a transparent gif from multiview
  33.         and then paste it as a bruch in DPaint - NEAT eh?)
  34.     o    Its FREE! (this is of course the best bit)
  35.  
  36.  
  37. Main limitations: (hey, its not _perfect_ after all)
  38.  
  39.     o    OM_WRITE BOOPSI method not yet implemented.  Expect this in a future
  40.         release.
  41.     o    Only decodes pictures with a global colour table.  Most gif loaders
  42.         do the same, and most writers write them.
  43.     o    Ignores any local colour tables (but still decodes picture).  Could
  44.         lead to a bad palette.
  45.  
  46. Distribution:
  47.  
  48. This program is FreeWare, _please_ give it to your friends, your enemies
  49. ANYONE who could possibly use it or otherwise spread it around.  Datatypes
  50. are a really excellent addition to the OS but there aren't yet enough
  51. quality datatypes out there.
  52.  
  53. The original achive in which this text file is placed may be included in
  54. any other release of non-commercial software, so long it remains
  55. intact.  If anyone wants to put it on a commercial release, just contact me.
  56.  
  57. Installation:
  58.  
  59.     Copy the gif.datatype file into your sys:classes/datatypes/ drawer
  60.     Copy the Datatypes/GIF file (and its icon) into DEVS:Datatypes/
  61.  
  62. Reboot your machine or use AddDataTypes to enable it.
  63.  
  64.  
  65.  
  66.  
  67. The Author:
  68.  
  69. I've just finished a 4 year Computer Systems Engineering degree at last ...
  70. And have a 6 month contract working for The University of South Autralia,
  71. on their 'web pages' (http://cis0.levels.unisa.edu.au/www/cis/), as well
  72. as some sysadmin work.
  73.  
  74. I can be reached via email at:
  75.  
  76.   zucchi@zedzone.apana.org.au (at home)
  77.   zucchi@box.apana.org.au
  78.   9107047w@lux.levels.unisa.edu.au (till end of '95) (at work)
  79.  
  80. or Aussie Post via:  ('home' address)
  81.  
  82.   Michael Zucchi
  83.   PO box 824
  84.   Waikerie SA 5330    <- SA = South Australia
  85.  
  86. or if ya live in Adelaide, ring Freds BBS and say hi.
  87.  
  88. I'd like to hear about any major/minor bugs.
  89.  
  90.  
  91. Thanks and the rest:
  92.  
  93. Thanks to the guys who supplied me with those odd (and i mean _odd_ :)
  94. gif's to test some of the weirder stuff.  And the other guys who suggested
  95. i do it.  And to all those guys who mailed me with bugs.  Hopefully the
  96. screenmode selection is a bit better now fellas?
  97.  
  98. Thanks also to the C= software eng's for making such a _cool_ OS.
  99.  
  100.  
  101. To the losers:
  102.  
  103. A big *no thanks* to the lamers out there not sticking to the
  104. distribution restrictions outlined above (various PD libraries and
  105. other datatype distributions).  Considering this is free, and it wasn't 
  106. just piecing together some C source, you could be a bit more considerate.
  107.  
  108.  
  109. Zgif 1.0?
  110. Will i ever release it?  I dont know ... the version i have now does
  111. a lot of things, and its what i personally use to show gif's and iff's
  112. but it still needs some work to become releasable.
  113.  
  114.  
  115.        ///
  116.       ///   Michael Zucchi
  117.   \\\///    zucchi@zedzone.apana.org.au
  118.    \\\/     Computer Systems Engineer (in the making)
  119.  
  120.  
  121. Note:
  122.     I dont know what to do about the GIF copyright notice, since
  123.     Compuserve did its thing a few months ago ...?
  124.     Maybe its time for a ZPNG (thats what its called right? :)
  125.  
  126.  History
  127.  
  128.  39.0    Initial version
  129.  39.1    Now does any depth gif, not only 4 or 8, used to ignore.
  130.  39.2    Now supprts interlaced gifs, used to ignore.
  131.  39.3    Added better viewmode selection via BestModeIDA(), uses
  132.      the 'workbench' monitor (if possible).
  133.  39.4    Fixed a tiny bug in extension block skipping code.
  134.  39.5    Monitor selection was up shit creek.  Now it should work a lot
  135.      better, and select a decent monitor (i only had Euro72 active,
  136.      so it seemed to be ok before).  No longer tries to clone the
  137.      workbench monitor.
  138.  39.6    Was passing incorrect dimensions to the datatype object via the
  139.      DTA_NominalHoriz/Vert tags.  Caused multiview to open a strange
  140.      sized window if run on workbench.
  141.  39.7    Changed GetBestMode() code - again.  Now it asks for a mode with
  142.      roughly square pixels (actually 130:100 seems to be best aspect???).
  143.      Appears to work better anyway.
  144.  39.8   Changed to use interleaved bitmaps if possible
  145.  39.9    Changed code to work with all 68000 series CPU's, this also
  146.      includes a more robust gif decoder (crashes and hangs less often)
  147.  39.10    Fixed a bug, which would cause crashes sometimes with 68000 machines.
  148.  39.11    Yet another bug in the new decoder - caused the last line of all gifs
  149.      to be missing.
  150.  39.12    Minor bug - the last row of some gifs would be decoded correctly,
  151.      but it wasn't output to the bitmap.
  152.  39.13    Major bug - *VERY*COMPRESSIBLE* gifs could overrun the line output
  153.      buffer before the data was output.
  154.  39.14    Added transparent gif support, via the bitmapheader.
  155.  39.15    Data beyond the picture width is now always cleared, this fixed a
  156.      problem with some viewers - with extra crap appearing along the
  157.      right hand side of some pictures.
  158.  39.16    The revision 15 changes had some screwy problems, now rectified.
  159.     The interlaced gif handling code could sometimes stop one line
  160.     early - now it should work with all sizes.
  161.     (i should do more testing, but i dont have enough odd sized gifs)
  162.